package com.ruoyi.common.core.domain.entity;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.List;

/**
 * 问题数据对象 sys_question
 * 
 * @author ruoyi
 * @date 2022-05-03
 */
public class SysQuestion extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 问题编码 */
    private Long questionId;

    private Long companyId;

    private Long naireId;

    /** 问题标题 */
    @Excel(name = "问题标题")
    private String label;

    /** 显示顺序 */
    @Excel(name = "显示顺序")
    private Integer sort;

    /** 问题分数 */
    @Excel(name = "问题分数")
    private Integer score;

    /** 问题等级 */
    @Excel(name = "问题等级")
    private Integer level;

    /** 问题领域（0信息化 1生产，……） */
    @Excel(name = "问题领域", readConverterExp = "0=信息化,1=生产，……")
    private Long domain;

    /** 问题内容 */
    @Excel(name = "问题内容")
    private String detail;

    /** 问题状态（0正常 1停用） */
    @Excel(name = "问题状态", readConverterExp = "0=正常,1=停用")
    private String status;

    private List<SysQuestionRecord> records;

    private String optionConfig;

    private double grade=0;

    private String weight;

    public void setQuestionId(Long questionId) 
    {
        this.questionId = questionId;
    }

    public Long getQuestionId() 
    {
        return questionId;
    }
    public void setLabel(String label) 
    {
        this.label = label;
    }

    public String getLabel() 
    {
        return label;
    }
    public void setSort(Integer sort) 
    {
        this.sort = sort;
    }

    public Integer getSort() 
    {
        return sort;
    }
    public void setScore(Integer score) 
    {
        this.score = score;
    }

    public Integer getScore() 
    {
        return score;
    }
    public void setLevel(Integer level) 
    {
        this.level = level;
    }

    public Integer getLevel() 
    {
        return level;
    }
    public void setDomain(Long domain)
    {
        this.domain = domain;
    }

    public Long getDomain()
    {
        return domain;
    }
    public void setDetail(String detail) 
    {
        this.detail = detail;
    }

    public String getDetail() 
    {
        return detail;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public List<SysQuestionRecord> getRecords() {
        return records;
    }

    public void setRecords(List<SysQuestionRecord> records) {
        this.records = records;
    }

    public Long getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Long companyId) {
        this.companyId = companyId;
    }

    public Long getNaireId() {
        return naireId;
    }

    public void setNaireId(Long naireId) {
        this.naireId = naireId;
    }

    public double getGrade() {
        return grade;
    }

    public void setGrade(double grade) {
        this.grade = grade;
    }

    public String getOptionConfig() {
        return optionConfig;
    }

    public void setOptionConfig(String optionConfig) {
        this.optionConfig = optionConfig;
    }

    public String getWeight() {
        return weight;
    }

    public void setWeight(String weight) {
        this.weight = weight;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("questionId", getQuestionId())
            .append("label", getLabel())
            .append("sort", getSort())
            .append("score", getScore())
            .append("level", getLevel())
            .append("domain", getDomain())
            .append("detail", getDetail())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
